package com.fs.base;

import tk.mybatis.mapper.entity.Example;

import java.io.Serializable;
import java.util.List;

/**
 * @author hua
 * @version 1.0
 * @title IServiceBase
 * @description Service基本类接口
 * @create 2024/4/16 17:04
 */
public interface ServiceBase<E> {
    /**
     * 查询所有
     * @return 对象集合
     */
    public List<E> select();
    /**
     * 根据id查询对象
     * @return 对象
     */
    public E selectById(Serializable id);

    /**
     * 根据id查对象
     * @param id
     * @return 对象
     */
    public E find(Object id);
    /*
    ???
     */
    public E findEntity(E id);

    /**
     * 分页查询
     * @param pageNum 页数
     * @param pageSize 页容量
     * @return
     */
    public List<E> selectPage(int pageNum, int pageSize);

    /**
     * 根据id删除对象
     * @param id
     * @return 对象
     */
    public int delete(Serializable id);

    /**
     * 添加对象
     * @param y
     * @return 添加数
     */
    public int insert(E y);

    /**
     * 修改对象
     * @param y
     * @return 修改数
     */
    public int update(E y);

}
